home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / os2 / rsynth21.zip / readme.os2 < prev    next >
Text File  |  1996-07-19  |  6KB  |  139 lines

  1. This is a rough port of Rsynth2.0, an English text-> speech app originally 
  2. written for a Sun Sparcstation.  Despite what I wrote in earlier versions, 
  3. I have made the changes required for this package to both output speech 
  4. directly vis MMPM, and to save WAV files as well as AU files.  I'm still
  5. interested in hearing from folks who are using this.
  6.  
  7. Rsynth, with just a little work, can be modified to become a Speech output 
  8. library, good for that talking Web Browser the world so desparately needs. 
  9. As a matter of fact, there's a print to Rsynth option in my Lynx/2 cfg file 
  10. right now.  Or maybe the IRC client that speaks......
  11.  
  12. Using the Executables:
  13.  
  14. There are three OS/2 executables in this Zip file. They are all written 
  15. with EMX/GCC, so you will need the EMXRT stuff to use them.  They are:
  16.  
  17. Say.exe        - the actual text->speech app
  18.  
  19. mkdictdb.exe   - Makes the required Dictionary Database file from 
  20.                  an external Dictionary
  21.  
  22. dlookup.exe    - Looks up Phonemes from the database Dictionary.
  23.  
  24. Running Say.exe:
  25.  
  26. Typing "Say --help" on the command line will show you all the command line 
  27. options.  The important ones for OS/2 are as follows:
  28.  
  29.      -r samp rate  Valid values for this are 8, 11, 22, and 44. This is the
  30.                    sample rate used either for generating WAV files or 
  31.                    speaking directly. The default is 8 kHz.  The default 
  32.                    value should be used for creating AU files, any valid 
  33.                    value may be used for WAV file creation or speaking 
  34.                    directly.
  35.  
  36.      +Q            Quiet mode - if specified on the command line, will not 
  37.                    speak to MMPM.
  38.  
  39.      +C         Some Sound Card device drivers play speech from Rsynth
  40.                    twice as fast as they should, so the output sounds like
  41.                    a chipmunk.  Specifiying +C on the command line will
  42.                    counter this 'chipmunk effect' by lying to MMPM about
  43.                    playback sample rate.
  44.  
  45.      -b 16         This will specify 16 bit playback (for sound systems
  46.                    that can support this).  The default is 8 bit.       
  47.  
  48.      -o filename   This saves a file in AU format. If you have installed 
  49.                    MMOS/2 AU sound support, you can then use PLAY.CMD to 
  50.                    listen to it.  AU sound support for MMOS/2 is part of 
  51.                    the Warp BonusPak - you will need to install  this if 
  52.                    you have yet to do so.
  53.  
  54.      -w filename   This saves a file in WAV format.  All WAV files are 
  55.                    stored as 8 bit mono, until I can figure oout how to 
  56.                    do otherwise.
  57.  
  58.      -f frequency  Fundamental Frequency for the voice - default is 1330 Hz.  
  59.  
  60.      -v            Verbose output- print a lot of stuff to the screen while
  61.                    doing the conversion. 
  62.  
  63.       <filename    get text to say from file filename, otherwise takes 
  64.                    stuff to say from command line.
  65.  
  66. Mkdictdb.exe:
  67. dlookup.exe :
  68.  
  69. I have not included a dictionary or a dictionary database in the distrib-
  70. ution.  Say will work without it, but is more accurate in pronunciation 
  71. with one.  Read the README file for information as to where to find 
  72. American English and British English dictionaries and how to convert them 
  73. using mkdictdb.exe. I have placed the ASCII version of the source diction-
  74. ary I am using on my web site, http://www.cris.com/~djd/products.html,
  75. for your convenience as well. This will need to be converted by MkDictdb.  
  76. These dictionaries are in a fairly simple ASCII format, so it is pretty 
  77. easy to modify or add words to them.  So, for instance, the word 
  78. "LuxuryYacht" could actually be pronounced Throat-Warbler-Mangrove, or you 
  79. could do horrible things to the pronunciation of the word "Microsoft". 
  80. Or you could actually do something useful with it - your choice.
  81.  
  82. Be warned that the resulting Dictionary file is fairly large.  Say.exe 
  83. looks for a dictionary file in the current working directory named Adict.db
  84. by default, the command line switch -d b causes it to look for the 
  85. alternate dictionary bdict.db.
  86.  
  87. You should also be warned that the conversion process can take several 
  88. hours, and that MkDictDB is poorly designed in that it has no progress
  89. meter.
  90.  
  91. Once you've made the dictionary, say.exe will look for it in your 
  92. $ETC directory, so it would be useful to move it there.
  93.  
  94. Notes for Programmers:
  95.  
  96. Everything here compiles under EMX/GCC, using Gnumake as the make utility.
  97. You will also need to have GNU GDBM ported over to OS/2 - I highly 
  98. recommend Kai Uwe Rommel's port, which can currently be found on
  99. ftp.leo.org. Your mileage may vary with other development environments.
  100.  
  101. There has been at least one person who has sucessfully recompiled  Rsynth
  102. with IBM Cset. I tried here (not very hard) with some success, but had
  103. difficulties with the port of GDBM.  So, this version is still on EMX.
  104.  
  105. Stuff that needs to be done:
  106.  
  107. Floating Point Underflow problem
  108.  
  109. This has been a real bugbear to fix - I hope I have it fixed now.  If you
  110. get floating point underflow exceptions with say.exe Please Email Me!
  111.  
  112. Creating a Speech Output Library
  113.  
  114. It should be fairly easy to take functions from say.c and create a speech 
  115. output API - speech_init(), Say_string(), say_file(), Speech_close() would 
  116. be a minimal function set.  Then put 'em in a DLL. Any Takers?
  117.  
  118. Mods to Improve Speech Output Quality
  119.  
  120. The support for sample rates other than 8000 helps.  As I only have an 8
  121. bit sound card, currently Rsynth creates 8 bit files, and plays 8 bit
  122. data. Raw data created by Rsynth is 16 bit, so adding a switch for 16 bit
  123. support, and updating the audio_init, audio_play, was definately a 
  124. worthwhile thing to do - the sound quality at 16 bit is greatly improved.
  125.  
  126. It would be nice to figure out how to make 16 bit WAV files as well.
  127.  
  128. Mods to increase efficiency
  129.  
  130. One person out there has made mods to multithread calculating and playing
  131. sentences in say.exe.  This was a great idea - if I wasn't so lazy I 
  132. would have incorporated those changes into this release. Maybe next time,
  133. with 16 bit WAV support.....
  134.  
  135. DIVE support has been as well. <sigh>
  136.  
  137. Derek J Decker         djd@cris.com 
  138.  
  139.